package com.story.service.impl;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.story.dao.IUserDao;
import com.story.domain.Page;
import com.story.domain.User;
import com.story.service.IUserService;
@Service("userService")
public class UserServiceImpl implements IUserService {
	@Autowired
	private IUserDao userDao;
	@Override
	public void registeUser(User user) {
		// 用户注册业务方法
		userDao.addUser(user);
	}

	@Override
	public void deleteUserByUserId(String id) {
		//用户删除业务方法
		userDao.deleteUserByUserId(id);

	}

	@Override
	public User updateUser(User user){
		// 用户更新业务方法
		return userDao.updateUser(user);
	}

	@Override
	public User findOneByUserId(String id) {
		// 根据用户ID查找业务方法
		return userDao.findOneByUserId(id);
	}
	/*
	 * 根据用户名检查用户是否存在的业务方法
	 * */
	@Override
	public boolean checkUsernameExisted(String username){
		User user = userDao.findoneByUserName(username);
		if(user!=null){
			return true;
		}
		return false;
	}

	@Override
	public User loginUser(String username, String password) {
		// 用户登陆的方法
		return userDao.findoneByUsernamePassowrd(username, password);
	}

	@Override
	public User findoneByUsername(String username) {
		//根据用户名查找用户的方法
		return userDao.findoneByUserName(username);
	}

	@Override
	public List<User> findAll() {
		// 查找所有用户的方法 慎用！
		return userDao.findAll();
	}

	@Override
	public Integer userTotal() {
		// 获取用户总数
		return userDao.selectCount();
	}

	@Override
	public List<User> findUsersByLimit(Page page) {
		// 分页查询用户
		return userDao.selectUsersByLimit(page);
	}

	@Override
	public User findoneByUsernamePassword(String username, String password) {
		return userDao.findoneByUsernamePassowrd(username, password);
	}

	



}
